using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using mebc.reflection;
using mebc.viewer;
using NUnit.Framework;

namespace mebc.tests.toDot
{
    [TestFixture]
    public class test_ToDot
    {
        [Test, Explicit]
        public void Only_input_processors()
        {
            var board = new Only_input_processors();
            var dotSource = board.GetMetaData().ToDot();
            Console.WriteLine(dotSource);
            DotViewer.ShowDot(dotSource);
        }

        [Test, Explicit]
        public void ToDict()
        {
            var td = new toDictionary.ToDictionaryMainboard();
            DotViewer.ShowDot(td.GetMetaData().ToDot());
        }
    }


    class Only_input_processors : Board
    {
        class A : Part {}
        class B : Part {}

        public Only_input_processors()
        {
            var a = new A();
            var b = new B();

            RedirectInputTo<int>(a);
            WireFromTo<string>(a, b);
            CaptureOutputFrom<bool>(b);
        }
    }
}